

<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui">
    <h:head>
        <script src="http://maps.google.com/maps/api/js?sensor=true" type="text/javascript"></script>
    </h:head>

    <h:form id="puntoEmergencia" >
        <center>
            <p:growl id="myGrowl" showDetail="true" globalOnly="true" life="2000" />
        </center>
        <center>
            <p:panelGrid id="pgPuntoEmergencia" style="width: 80%; font-size: 10px">
                <f:facet name="header">
                    <p:row>
                        <p:column colspan="9">Registro Punto de Emergencia </p:column>
                    </p:row>
                </f:facet>
                <p:row>
                    <p:column styleClass="celdaLabelMayor" colspan="2" >
                        <h:outputLabel  value="Tipo punto de emergencia" />
                    </p:column>
                    <p:column colspan="2" >
                        <p:selectOneMenu id="tipoPuntoEmergencia" title="--Seleccione el tipo punto emergencia--"
                                         required="true" converter="tipoPuntoEmergenciaConverter" value="#{beanGestionPuntosEmergencia.puntoEmergencia.idTipoPuntoEmergencia}" 
                                         requiredMessage="#{msg.requiredSelect}">
                            <f:selectItem itemLabel="--Seleccione el tipo de punto--" itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.listaTipoPuntoEmergencia}" var="tipoPunto" itemValue="#{tipoPunto}" itemLabel="#{tipoPunto.nombreTipoPuntoEmergencia}"/>
                        </p:selectOneMenu>
                        <p:message for="tipoPuntoEmergencia" id="tipoPuntoEmergenciamsg"/>
                    </p:column>

                </p:row>
                <p:row>
                    <p:column styleClass="celdaLabelMayor" colspan="2">
                        <h:outputLabel  value="Barrio" />
                    </p:column>
                    <p:column>
                        <p:selectOneMenu id="barrioPunto"
                                         required="true" converter="barrioConverter" value="#{beanGestionPuntosEmergencia.puntoEmergencia.idBarrioPuntoEmergencia}" 
                                         requiredMessage="#{msg.requiredSelect}">
                            <f:selectItem itemLabel="--Seleccione el barrio--" itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.listaBarrios}" var="barrio" itemValue="#{barrio}" itemLabel="#{barrio.nombreBarrio}"/>
                        </p:selectOneMenu>
                        <p:message for="barrioPunto" id="barrioPuntomsg"/>
                    </p:column>
                </p:row>
                <p:row>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputLabel  value="Nombre del contacto :" />
                    </p:column>
                    <p:column colspan="9" >
                        <p:inputText required="true" value="#{beanGestionPuntosEmergencia.puntoEmergencia.nombreContactoPuntoEmergencia}" requiredMessage="#{msg.requiredField}" 
                                     size="100" id="nombreContactoPunto" ></p:inputText>
                        <p:message for="nombreContactoPunto" id="nombreContactoPuntomsg"></p:message>
                    </p:column>
                </p:row>
                <p:row>
                    <p:column colspan="9" styleClass="celdaLabelMayor">
                        <h:outputLabel  value="Dirección" />
                    </p:column>
                </p:row>
                <p:row >
                    <p:column  styleClass="celdaLabelMayor">
                        <h:outputText value="Tipo de Vía" />
                    </p:column>

                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Nombre o Número de Vía" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Prefijo o Cuadrante" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Prefijo o Cuadrante" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Número Vía Generadora" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Prefijo o Cuadrante Via Generadora" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Prefijo o Cuadrante" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Numero de la Placa" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <h:outputText value="Ubicación Geográfica" />
                    </p:column>
                </p:row>
                <p:row>
                    <p:column>
                        <p:selectOneMenu id="tipoVia" title="Seleccione el tipo de vía de la direccion" 
                                         valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                         required="true" converter="tipoViaConverter" value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.tipoViaIdTipoVia}" 
                                         requiredMessage="#{msg.requiredSelect}">
                            <f:selectItem itemLabel="--Seleccione el tipo de via--" itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.tipoViaList}" var="tipoVia" itemValue="#{tipoVia}" itemLabel="#{tipoVia.nombreTipoVia}"/>
                            <p:ajax global="false" event="change" listener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                    update="linkMap,address,myGrowl"
                                    process="@this"/>
                        </p:selectOneMenu>
                        <p:message for="tipoVia" id="AAA23"/>
                    </p:column>
                    <p:column>
                        <p:inputText id="nombreONumeroVia" required="true"
                                     valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                     value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.nombreViaDireccion}"
                                     requiredMessage="#{msg.requiredField}" maxlength="50" >
                            <p:ajax event="blur" process="@this" update="address" listener="#{gestionarPuntosEmergencia.revisarDireccion}"></p:ajax>
                        </p:inputText>
                        <p:message for="nombreONumeroVia" id="AAA24"/>
                    </p:column>
                    <p:column>
                        <p:selectOneMenu id="prefijo1" converter="prefijoConverter" value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.idPrefijo1}"
                                         label="Seleccione el prefijo o cuadrante"
                                         valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}">
                            <f:selectItem itemLabel="" itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.prefijoList}" var="prefijo1" itemValue="#{prefijo1}" itemLabel="#{prefijo1.nombrePrefijo}"/>
                            <p:ajax global="false" event="change" listener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                    update="linkMap,address,myGrowl"
                                    process="@this"/>
                        </p:selectOneMenu>
                        <p:message for="prefijo1" id="AAA25"/>
                    </p:column>
                    <p:column>
                        <p:selectOneMenu id="prefijo1A" 
                                         value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.idPrefijo2}"
                                         converter="prefijoConverter" valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                         title="Seleccione el prefijo o cuadrante">
                            <f:selectItem itemLabel="" itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.prefijoList}" var="prefijo2" itemValue="#{prefijo2}" itemLabel="#{prefijo2.nombrePrefijo}"/>
                            <p:ajax global="false" event="change" listener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                    update="linkMap,address,myGrowl"
                                    process="@this"/>
                        </p:selectOneMenu>
                        <p:message for="prefijo1A" id="AAA26"/>
                    </p:column>
                    <p:column>
                        <p:inputText id="numeroViaGeneradora" size="5" required="true"
                                     value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.numeroViaDireccion}"
                                     requiredMessage="#{msg.requiredField}" valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                     maxlength="5">
                            <p:ajax global="false" event="blur" listener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                    update="linkMap,address,myGrowl"
                                    process="@this"/>
                        </p:inputText>
                        <p:message for="numeroViaGeneradora" id="AAA261"/>
                    </p:column>
                    <p:column>
                        <p:selectOneMenu id="prefijo2" disabled="false"
                                         value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.idPrefijo3}"
                                         valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                         converter="prefijoConverter"
                                         title="Seleccione el Tercer Prefijo o Cuadrante">
                            <f:selectItem itemLabel=" " itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.prefijoList}" var="prefijo3" itemValue="#{prefijo3}" itemLabel="#{prefijo3.nombrePrefijo}"/>
                            <p:ajax global="false" event="change" listener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                    update="linkMap,address,myGrowl"
                                    process="@this"/>
                        </p:selectOneMenu>
                        <p:message for="prefijo2" id="AAA27"/>
                    </p:column>
                    <p:column>
                        <p:selectOneMenu id="prefijo2A"
                                         value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.idPrefijo4}"
                                         valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                         converter="prefijoConverter"
                                         title="Seleccione el Cuarto Prefijo o Cuadrante" >
                            <f:selectItem itemLabel=" " itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.prefijoList}" var="prefijo4" itemValue="#{prefijo4}" itemLabel="#{prefijo4.nombrePrefijo}"/>
                            <p:ajax global="false" event="change" listener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                    update="linkMap,address,myGrowl"
                                    process="@this"/>
                        </p:selectOneMenu>
                        <p:message for="prefijo2A" id="AAA28"/>
                    </p:column>
                    <p:column>
                        <p:inputText id="numeroPlaca" size="5" required="true"
                                     maxlength="3"
                                     valueChangeListener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                     requiredMessage="#{msg.requiredField}" 
                                     value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.numeroPlacaDireccion}">
                            <p:ajax global="false" event="blur" listener="#{gestionarPuntosEmergencia.revisarDireccion}"
                                    update="linkMap,address,myGrowl"
                                    process="@this"/>                                                      
                        </p:inputText>
                        <p:message for="numeroPlaca" id="AAA29"/>
                    </p:column>
                    <p:column>
                        <p:commandLink id="linkMap" 
                                       disabled="#{beanGestionPuntosEmergencia.habilitarmapa}"
                                       title="Ver mapa"
                                       update="coordenadasMap"
                                       onclick="mapEmergencyPoint.show();codeAddressPuntoEmergencia()">
                            <p:graphicImage  value="#{beanGestionPuntosEmergencia.globeIcon}"/>
                        </p:commandLink>
                    </p:column>
                </p:row>
                <p:row>
                    <p:column colspan="9">
                        <p:selectOneMenu id="datoComplementario1" converter="datoComplementarioConverter"
                                         value="#{beanGestionPuntosEmergencia.puntoEmergencia.idDireccionPuntoEmergencia.datoComplementario}">
                            <f:selectItem itemLabel="-Seleccione-" itemValue=""/>
                            <f:selectItems value="#{beanGestionPuntosEmergencia.datoComplementarioList}" var="dComplem" itemValue="#{dComplem}" itemLabel="#{dComplem.nombreDatoComplementario}"/>
                            <p:ajax global="false" event="change" process="@this"/>
                        </p:selectOneMenu>
                    </p:column>
                </p:row>
                <p:row>
                    <p:column colspan="4">
                        <p:inputText  id="address" disabled="true" 
                                      size="100" value="#{beanGestionPuntosEmergencia.direccionMostrada}" />
                    </p:column>
                    <p:column styleClass="celdaLabelMayor">
                        <p:outputLabel id="coordenadas" value="Coordenadas: "/>
                    </p:column>  
                    <p:column colspan="7">
                        <p:outputLabel id="coordenadasMap" value="Longitud: #{beanGestionPuntosEmergencia.puntoEmergencia.longitudPuntoEmergencia} - Latitud: #{beanGestionPuntosEmergencia.puntoEmergencia.latitudPuntoEmergencia}"/>
                    </p:column>  

                </p:row>
                <p:row>
                    <p:column styleClass="celdaLabelMayor" >
                        <h:outputLabel  value="Estado:" />
                    </p:column>
                    <p:column colspan="9">
                        <p:selectOneRadio id="options" required="true" requiredMessage="#{msg.requiredSelect}" value="#{beanGestionPuntosEmergencia.puntoEmergencia.estadoPuntoEmergencia}">  
                            <f:selectItem itemLabel="Activo" itemValue="true" />  
                            <f:selectItem itemLabel="Inactivo" itemValue="false" />  
                        </p:selectOneRadio> 
                        <p:message for="options" id="optionsmsg" />
                    </p:column>
                </p:row>
                <p:row >
                    <p:column colspan="5" style="text-align: left">
                        <p:commandButton value="Guardar" update="resumenMateriales,optionsmsg,nombreContactoPuntomsg,myGrowl,AAA23,AAA24,AAA261,AAA29,tipoPuntoEmergenciamsg,barrioPuntomsg,nombreContactoPunto,tipoVia,
                                         nombreONumeroVia,numeroViaGeneradora,numeroPlaca,barrioPunto,tipoPuntoEmergencia,address,coordenadasMap" 
                                         process="@this,options,nombreContactoPunto,tipoVia,nombreONumeroVia,numeroViaGeneradora,numeroPlaca,barrioPunto,tipoPuntoEmergencia" actionListener="#{guardarPuntoEmergencia}"/>
                    </p:column>
                </p:row>
            </p:panelGrid>
        </center>
        <p:commandButton value="Actualizar " actionListener="#{actualizarPunto}"
                                         process="@this"
                                         update="barrioPunto,resumenMateriales" 
                                         />
        <br></br>
        <br></br>
        <center>
            <p:dataTable id="resumenMateriales" var="puntoEmergencia" style="font-size: 12px; width: 100%" 
                         value="#{beanGestionPuntosEmergencia.listaPuntosEmergencia}"
                         selection="#{beanGestionPuntosEmergencia.puntoEmergenciaSelected}"
                         rowKey="#{puntoEmergencia.idPuntoEmergencia}"
                         selectionMode="single"
                         emptyMessage="No se han encontrado puntos de emergencia registrados" paginator="true" >  
                <p:ajax event="rowSelect" listener="#{beanGestionPuntosEmergencia.rowSelected}"   
                        update="resumenMateriales,:menu:tabViewGeneral:tabViewMovilizacion:puntoEmergencia:pgPuntoEmergencia"/>  
                <p:ajax event="rowUnselect" listener="#{beanGestionPuntosEmergencia.onRow}" update="resumenMateriales,:menu:tabViewGeneral:tabViewMovilizacion:puntoEmergencia:pgPuntoEmergencia"/>  
                <f:facet name="header">  
                    <p:row>
                        <p:column >Resumen de los puntos de Emergencia</p:column>
                    </p:row>
                </f:facet>  

                <p:column headerText="Barrio">  
                    <h:outputText value="#{puntoEmergencia.idBarrioPuntoEmergencia.nombreBarrio}"></h:outputText>
                </p:column>  

                <p:column headerText="Localidad">  
                    <h:outputText value="#{puntoEmergencia.idBarrioPuntoEmergencia.localidadBarrio}"></h:outputText>
                </p:column>  

                <p:column headerText="Contacto" >  
                    <h:outputText value="#{puntoEmergencia.nombreContactoPuntoEmergencia}"></h:outputText>
                </p:column>  

                <p:column headerText="Tipo Punto de Emergencia">  
                    <h:outputText value="#{puntoEmergencia.idTipoPuntoEmergencia.nombreTipoPuntoEmergencia}"></h:outputText>
                </p:column>
                <p:column headerText="Estado">
                    <p:selectBooleanButton value="#{puntoEmergencia.estadoPuntoEmergencia}" onLabel="Activo" offLabel="Inactivo" disabled="true" onIcon="ui-icon-check" offIcon="ui-icon-close">  </p:selectBooleanButton>    
                </p:column>
            </p:dataTable> 
        </center>
    </h:form>
</html>


